post /cloudextensions/{cloudExtensionId}/operations/offlineMigrateVmToCloud'

Offline Migrate VM To Cloud (offlineMigrateVmToCloud)

Offline Migration.

Path parameters

cloudExtensionId (required)

Path Parameter — Cloud Extension ID

Consumes

This API call consumes the following media types via the Content-Type request header:

  • application/json

Request body

moveSpec MoveToCloudRequest (required)

Body Parameter — Move to cloud request

 

 

MoveToCloudRequest

_type

String Whether to run the VM in AWS or Azure.

Enum:

MoveToAwsRequest

MoveToAzureRequest

MoveToGCPRequest

 

Note: Use the relevant structure depending on whether you are moving a VM to AWS, Azure, or GCP.

 

MoveToAwsRequest

sourceVmId

String VM ID

instanceType

String VM instance type

subnetId (optional)

String Subnet ID. If none is specified, the default edge node subnet is used.

staticAddress (optional)

String The static IP for the instance or specify an ENI ID (e.g. eni-xxxxx) to associate a reserved Elastic Network Interface.

edgeNode

EdgeNode

Cloud Edge node - Node A or Node B

runMode

RunMode

RunMode - Normal, TestClone, or Offline

storagePolicy (optional)

StoragePolicy

Storage policy - write back or write isolation

targetStorageSpec (optional)

TargetStorageSpec

_type

String AWS, Azure, or GCP

Enum:

AwsTargetStorageSpec

AzureTargetStorageSpec

GcpTargetStorageSpec

AWSTargetStorageSpec

storageType

String AWS target storage

isEbsEncryption (optional)

Boolean Use EBS Encryption for native volumes. Only applicable to AWS.

ebsEncryptionKeyAlias (optional)

String Encryption key alias or ARN to be used for encryption. If isEbsEncryption is set to true and this isn't specified the default key will be used.

_type

String Move to AWS

 

Enum:

MoveToAwsRequest

pricingModel (optional)

PricingModel

_type

String Pricing model - ondemand or spot market pricing

Enum:

OnDemandPricingModel

SpotMarketBidParams

 

MoveToAzureRequest 

sourceVmId

String VM ID

instanceType

String VM instance type

subnetId (optional)

String Subnet ID. If none is specified, the default edge node subnet is used.

staticAddress (optional)

String The static IP for the instance or specify an ENI ID (e.g. eni-xxxxx) to associate a reserved Elastic Network Interface.

edgeNode

EdgeNode

Cloud Edge node - Node A or Node B

runMode

RunMode

RunMode - Normal, TestClone, or Offline

storagePolicy (optional)

StoragePolicy

Storage policy - write back or write isolation

targetStorageSpec (optional)

TargetStorageSpec

_type

String AWS, Azure, or GCP

Enum:

AwsTargetStorageSpec

AzureTargetStorageSpec

GcpTargetStorageSpec

AzureTargetStorageSpec

storageAccount

String Azure storage account

_type

String

Enum:

MoveToAzureRequest

securityGroupIds (optional)

array[String]

resourceGroupId (optional)

String Resource group ID

availabilitySetId (optional)

String Availability set ID

azureHubLicenseType (optional)

String

Azure Windows hub type configuration - client or server. A cloud-provided license is used if neither of these options is specified.

 

MoveToGCPRequest 

sourceVmId

String VM ID

instanceType

String VM instance type

subnetId (optional)

String Subnet ID. If none is specified, the default edge node subnet is used.

staticAddress (optional)

String The static IP for the instance or specify an ENI ID (e.g. eni-xxxxx) to associate a reserved Elastic Network Interface.

edgeNode

EdgeNode

Cloud Edge node - Node A or Node B

runMode

RunMode

RunMode - Normal, TestClone, or Offline

storagePolicy (optional)

StoragePolicy

Storage policy - write back or write isolation

targetStorageSpec (optional)

TargetStorageSpec

_type

String AWS, Azure, or GCP

Enum:

AwsTargetStorageSpec

AzureTargetStorageSpec

GCPTargetStorageSpec

GCPTargetStorageSpec

_Type String Enum: GcpTargetStorageSpec

diskType (optional)

String Enum:

Standard

SSD

_type

Array[String]

Enum:

MoveToGCPRequest

useEphemeralExternalIp

Boolean Create an ephemeral external IP address.

networkTags (optional)

Array[String] Network tags

publicIp (optional)

String

osLicenseType

String A link to a license for the OS example: "https://www.googleapis.com/compute/v1/projects/windows-cloud/global/licenses/windows-server-2008-r2"

 

Cloud-2-Cloud

sourceVmId

String VM ID

cloudDetailsName

String VM instance typCloud details name. Should be used only when cloud-to-cloud use is intended.

instanceType

String VM instance type

subnetId (optional)

String Subnet ID. If none is specified, the default edge node subnet is used.

staticAddress (optional)

String The static IP for the instance or specify an ENI ID (e.g. eni-xxxxx) to associate a reserved Elastic Network Interface.

edgeNode

EdgeNode

Cloud Edge node - Node A or Node B

runMode

RunMode

RunMode - Normal, TestClone, or Offline

storagePolicy (optional)

StoragePolicy

Storage policy - write back or write isolation

targetStorageSpec (optional)

TargetStorageSpec

_type

String AWS, Azure, or GCP

Enum:

AwsTargetStorageSpec

AzureTargetStorageSpec

GcpTargetStorageSpec

AWSTargetStorageSpec

storageType

String AWS target storage

isEbsEncryption (optional)

Boolean Use EBS Encryption for native volumes. Only applicable to AWS.

ebsEncryptionKeyAlias (optional)

StringEncryption key alias or ARN to be used for encryption. If isEbsEncryption is set to true and this isn't specified the default key will be used.

customTags (optional)

Array Tags to place on instance

targetInstanceName (optional)

Strin Target instance name is used, unless empty, as the prefix of the instance name in the cloud.

_type

String The type of the request, which indicates the cloud provider for the target VM - AWS, Azure or GCP.

 

Enum:

MoveToAwsRequest

MoveToAzureRequest

MoveToGCPRequest

pricingModel (optional)

PricingModel

_type

String Pricing model - ondemand or spot market pricing

Enum:

OnDemandPricingModel

SpotMarketBidParams

 

Return type

TaskId

value (optional)

String Entity ID

_type

String Task ID

Enum:

TaskId

 

 

AWS Example data

Content-Type: application/json

{

  "sourceVmId": "vm-1",

  "instanceType": "t2.medium",

  "subnetId": "subnet-123456",

  "edgeNode": "NodeA",

  "runMode": "Offline",

  "targetStorageSpec": {

  "_type": "AwsTargetStorageSpec",

  "storageType": "standard",

  "isEbsEncryption": false

  },

  "securityGroupIds": [

  "sg-876543a"

  ],

  "_type": "MoveToAwsRequest"

}

Azure Example data

Content-Type: application/json

{

  "sourceVmId": "vm-1",

  "instanceType": "Standard_D1_v2",

  "subnetId": "/subscriptions/a0123bc4-d567-89e1-0111-f21g31h4i151/resourceGroups/Company-NameTest/providers/Microsoft.Network/virtualNetworks/boiler-plate/subnets/SD-company",

  "edgeNode": "NodeA",

  "runMode": "Offline",

  "targetStorageSpec": {

  "_type": "AzureTargetStorageSpec",

  "storageAccount": "/subscriptions/a0123bc4-d567-89e1-0111-f21g31h4i151/resourceGroups/rg123456789-UuI/providers/Microsoft.Storage/storageAccounts/sa123456789zx"

  },

  "securityGroupIds": [

  "/subscriptions/a0123bc4-d567-89e1-0111-f21g31h4i151/resourceGroups/Company-NameTest/providers/Microsoft.Network/networkSecurityGroups/AzureMain-NEurope-Example"

  ],

  "resourceGroupId": "/subscriptions/a0123bc4-d567-89e1-0111-f21g31h4i151/resourceGroups/rg123456789-UuI"

  "_type": "MoveToAzureRequest"

}

 

GCP Example data

Content-Type: application/json

{

  "sourceVmId": "vm-1",

  "instanceType": "n1-standard-1",

  "subnetId": "https://www.googleapis.com/compute/v1/projects/velosdev/regions/europe-west1/subnetworks/example",

  "edgeNode": "NodeA",

  "runMode": "Offline",

  "targetStorageSpec": {

  "_type": "GcpTargetStorageSpec",

  "diskType": "Standard"

  },

  "customTags": [],

  "useEphemeralExternalIp": false,

  "networkTags": ["tagTag"],

  "_type": "MoveToGCPRequest"

}

 

 

Produces

This API call produces the following media types according to the Accept request header; the media type will be conveyed by the Content-Type response header.

  • application/json

Responses

201

Created TaskId

Default

Error ErrorInfo

errorCode (optional)

String

url(optional)

String

message (optional)

String